package com.hyt.it.ogt.ykcj.service.grade;

import com.github.pagehelper.PageInfo;
import com.hyt.it.ogt.ykcj.common.enums.ExamResultDownLoadFileTypeEnum;
import com.hyt.it.ogt.ykcj.domain.vo.EnterpriseExamineeInfoVo;
import com.hyt.it.ogt.ykcj.domain.vo.QueryEnterpriseExamineeGradeVo;
import com.hyt.loginfo.model.User;

import java.util.List;
import java.util.Map;

/**
 * 考试组考生信息Service接口
 * 
 * @author liying
 * @date 2021-11-19
 */
public interface IEnterpriseGroupExamineeInfoService
{



    /**
     * 分页查询企业招聘考生信息列表
     * @param queryExamineeGradeVo
     * @return
     */
    PageInfo<List<EnterpriseExamineeInfoVo>> selectEnterpriseExamineeGradePage(QueryEnterpriseExamineeGradeVo queryExamineeGradeVo);


    /**
     * 导出考试成绩
     * @param queryEnterpriseExamineeGradeVo
     * @param user
     * @param fileType
     * @return
     * @throws Exception
     */
    void exportExcelByCondition(QueryEnterpriseExamineeGradeVo queryEnterpriseExamineeGradeVo, User user, ExamResultDownLoadFileTypeEnum fileType) throws Exception;



    /**
     * 重新计算考试合格标识
     * @param relationExamIds
     * @return
     */
    void refreshExamExamineeQualified(List<String> relationExamIds,String examId);


    /**
     * 更新考试组考生合格及区间
     * @param examIds
     */
    void updateExamExamineeQualified(List<String> examIds);


    /**
     * 获取考试组的合格标识
     * @param examId
     * @param examineeName
     * @return
     */
    Map<String,String> getGroupQualifiedStatusAndRegionName(String examId,String idCard,String examineeName);


    /**
     * 更新考试组合并考试单个考试状态
     * @param examId
     * @param examineeId
     */
    void  refreshEnterpriseExamineeQualified(String examId,String examineeId);

}
